package com.activemq.entity;

import com.thoughtworks.xstream.annotations.XStreamAlias;
import com.thoughtworks.xstream.annotations.XStreamImplicit;

import java.io.Serializable;
import java.util.Date;

@XStreamAlias("user")
public class UserDto implements Serializable {

	private static final long serialVersionUID = 86075184292420246L;

	@XStreamAlias("id")
	private String id;
	
	/**
	 * 登录帐号
	 */
	@XStreamAlias("username")
	private String username;
	
	/**
	 * 登录密码
	 */
	@XStreamAlias("password")
	private String password;

	/**
	 * 真实姓名
	 */
	@XStreamAlias("trueName")
	private String trueName;
	
	/**
	 * 身份证号
	 */
	@XStreamAlias("idCard")
	private String idCard;
	
	/**
	 * 电子邮箱
	 */
	@XStreamAlias("email")
	private String email;
	
	/**
	 * 手机
	 */
	@XStreamAlias("mobile")
	private String mobile;

	/**
	 * 描述
	 */
	@XStreamAlias("describe")
	private String describe;
	
	/**
	 * 信息完整性通过验证
	 */
	@XStreamAlias("infoValid")
	private String infoValid = "0";
	
	/**
	 * 手机短消息验证
	 */
	@XStreamAlias("smsValid")
	private String smsValid = "0";
	
	@XStreamImplicit(itemFieldName="positionId")
	private String[] positionIds;

	/**
	 * 用户状态 0为停止 1为正常
	 */
	@XStreamAlias("status")
	private int status = 1;
	
	/**
	 * 是否为控制台用户
	 */
	@XStreamAlias("isConsole")
	private String isConsole = "0";

	/**
	 * 创建时间
	 */
	@XStreamAlias("createDate")
	private Date createDate;	
	
	@XStreamAlias("updateTime")
	private Date updateTime;
	
	/**
	 * 部门创建者所属平台编码
	 */
	@XStreamAlias("createPlatformCode")
	private String createPlatformCode;
	
	/**
	 * 最后更新平台编码
	 */
	@XStreamAlias("updatePlatformCode")
	private String updatePlatformCode;
	
	/**
	 * 是否同步到云
	 */
	@XStreamAlias("syncType")
	private int syncType = 1;
	
	/**
	 * 用户所属行政区划
	 */
	@XStreamAlias("rootRegionCode")
	private String rootRegionCode;
	
	@XStreamAlias("pwdLastedTime")
	private Date pwdLastedTime;
	
	public UserDto() {
		
	}

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public String getTrueName() {
		return trueName;
	}

	public void setTrueName(String trueName) {
		this.trueName = trueName;
	}

	public String getIdCard() {
		return idCard;
	}

	public void setIdCard(String idCard) {
		this.idCard = idCard;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public String getMobile() {
		return mobile;
	}

	public void setMobile(String mobile) {
		this.mobile = mobile;
	}

	public String getDescribe() {
		return describe;
	}

	public void setDescribe(String describe) {
		this.describe = describe;
	}

	public int getStatus() {
		return status;
	}

	public void setStatus(int status) {
		this.status = status;
	}

	public String getIsConsole() {
		return isConsole;
	}

	public void setIsConsole(String isConsole) {
		this.isConsole = isConsole;
	}

	public Date getCreateDate() {
		return createDate;
	}

	public void setCreateDate(Date createDate) {
		this.createDate = createDate;
	}

	public Date getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}

	public String[] getPositionIds() {
		return positionIds;
	}

	public void setPositionIds(String[] positionIds) {
		this.positionIds = positionIds;
	}
	
	public String getInfoValid() {
		return infoValid;
	}

	public void setInfoValid(String infoValid) {
		this.infoValid = infoValid;
	}

	public String getSmsValid() {
		return smsValid;
	}

	public void setSmsValid(String smsValid) {
		this.smsValid = smsValid;
	}

	public String getCreatePlatformCode() {
		return createPlatformCode;
	}

	public void setCreatePlatformCode(String createPlatformCode) {
		this.createPlatformCode = createPlatformCode;
	}

	public String getUpdatePlatformCode() {
		return updatePlatformCode;
	}

	public void setUpdatePlatformCode(String updatePlatformCode) {
		this.updatePlatformCode = updatePlatformCode;
	}

	public int getSyncType() {
		return syncType;
	}

	public void setSyncType(int syncType) {
		this.syncType = syncType;
	}

	public String getRootRegionCode() {
		return rootRegionCode;
	}

	public void setRootRegionCode(String rootRegionCode) {
		this.rootRegionCode = rootRegionCode;
	}

	public Date getPwdLastedTime() {
		return pwdLastedTime;
	}

	public void setPwdLastedTime(Date pwdLastedTime) {
		this.pwdLastedTime = pwdLastedTime;
	}

}

